;;; Copyright 1987, 1994, 1998  The Open Group
;;;
;;; All Rights Reserved.
;;;
;;; The above copyright notice and this permission notice shall be included
;;; in all copies or substantial portions of the Software.
;;;
;;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
;;; OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
;;; MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
;;; IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
;;; OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
;;; ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
;;; OTHER DEALINGS IN THE SOFTWARE.
;;;
;;; Except as contained in this notice, the name of The Open Group shall
;;; not be used in advertising or otherwise to promote the sale, use or
;;; other dealings in this Software without prior written authorization
;;; from The Open Group.

;;; Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts
;;;
;;;                         All Rights Reserved
;;;
;;; Permission to use, copy, modify, and distribute this software and its
;;; documentation for any purpose and without fee is hereby granted,
;;; provided that the above copyright notice appear in all copies and that
;;; both that copyright notice and this permission notice appear in
;;; supporting documentation, and that the name of Digital not be
;;; used in advertising or publicity pertaining to distribution of the
;;; software without specific, written prior permission.
;;;
;;; DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
;;; ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
;;; DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
;;; ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
;;; WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
;;; ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
;;; SOFTWARE.

(in-package #:clim-xcommon)

(mapc (lambda (name-and-code)
        (destructuring-bind (name . code) name-and-code
          (define-keysym name code)))
      '((:VOID-SYMBOL                  . #xffffff)
        ;; TTY Functions, cleverly chosen to map to ascii, for convenience of
        ;; programming, but could have been arbitrary (at the cost of lookup
        ;; tables in client code.
        (:BACKSPACE                    . #xff08)
        (:TAB                          . #xff09)
        (:LINEFEED                     . #xff0a)
        (:CLEAR                        . #xff0b)
        (:RETURN                       . #xff0d)
        (:PAUSE                        . #xff13)
        (:SCROLL-LOCK                  . #xff14)
        (:SYS-REQ                      . #xff15)
        (:ESCAPE                       . #xff1b)
        (:DELETE                       . #xffff)
        (:MULTI-KEY                    . #xff20)
        (:CODEINPUT                    . #xff37)
        (:SINGLE-CANDIDATE             . #xff3c)
        (:MULTIPLE-CANDIDATE           . #xff3d)
        (:PREVIOUS-CANDIDATE           . #xff3e)
        (:KANJI                        . #xff21)
        (:MUHENKAN                     . #xff22)
        (:HENKAN-MODE                  . #xff23)
        (:HENKAN                       . #xff23)
        (:ROMAJI                       . #xff24)
        (:HIRAGANA                     . #xff25)
        (:KATAKANA                     . #xff26)
        (:HIRAGANA-KATAKANA            . #xff27)
        (:ZENKAKU                      . #xff28)
        (:HANKAKU                      . #xff29)
        (:ZENKAKU-HANKAKU              . #xff2a)
        (:TOUROKU                      . #xff2b)
        (:MASSYO                       . #xff2c)
        (:KANA-LOCK                    . #xff2d)
        (:KANA-SHIFT                   . #xff2e)
        (:EISU-SHIFT                   . #xff2f)
        (:EISU-TOGGLE                  . #xff30)
        (:KANJI-BANGOU                 . #xff37)
        (:ZEN-KOHO                     . #xff3d)
        (:MAE-KOHO                     . #xff3e)
        (:HOME                         . #xff50)
        (:LEFT                         . #xff51)
        (:UP                           . #xff52)
        (:RIGHT                        . #xff53)
        (:DOWN                         . #xff54)
        (:PRIOR                        . #xff55)
        (:PAGE-UP                      . #xff55)
        (:NEXT                         . #xff56)
        (:PAGE-DOWN                    . #xff56)
        (:END                          . #xff57)
        (:BEGIN                        . #xff58)
        (:SELECT                       . #xff60)
        (:PRINT                        . #xff61)
        (:EXECUTE                      . #xff62)
        (:INSERT                       . #xff63)
        (:UNDO                         . #xff65)
        (:REDO                         . #xff66)
        (:MENU                         . #xff67)
        (:FIND                         . #xff68)
        (:CANCEL                       . #xff69)
        (:HELP                         . #xff6a)
        (:BREAK                        . #xff6b)
        (:MODE-SWITCH                  . #xff7e)
        (:SCRIPT-SWITCH                . #xff7e)
        (:NUM-LOCK                     . #xff7f)
        (:KP-SPACE                     . #xff80)
        (:KP-TAB                       . #xff89)
        (:KP-ENTER                     . #xff8d)
        (:KP-F1                        . #xff91)
        (:KP-F2                        . #xff92)
        (:KP-F3                        . #xff93)
        (:KP-F4                        . #xff94)
        (:KP-HOME                      . #xff95)
        (:KP-LEFT                      . #xff96)
        (:KP-UP                        . #xff97)
        (:KP-RIGHT                     . #xff98)
        (:KP-DOWN                      . #xff99)
        (:KP-PRIOR                     . #xff9a)
        (:KP-PAGE-UP                   . #xff9a)
        (:KP-NEXT                      . #xff9b)
        (:KP-PAGE-DOWN                 . #xff9b)
        (:KP-END                       . #xff9c)
        (:KP-BEGIN                     . #xff9d)
        (:KP-INSERT                    . #xff9e)
        (:KP-DELETE                    . #xff9f)
        (:KP-EQUAL                     . #xffbd)
        (:KP-MULTIPLY                  . #xffaa)
        (:KP-ADD                       . #xffab)
        (:KP-SEPARATOR                 . #xffac)
        (:KP-SUBTRACT                  . #xffad)
        (:KP-DECIMAL                   . #xffae)
        (:KP-DIVIDE                    . #xffaf)
        (:KP-0                         . #xffb0)
        (:KP-1                         . #xffb1)
        (:KP-2                         . #xffb2)
        (:KP-3                         . #xffb3)
        (:KP-4                         . #xffb4)
        (:KP-5                         . #xffb5)
        (:KP-6                         . #xffb6)
        (:KP-7                         . #xffb7)
        (:KP-8                         . #xffb8)
        (:KP-9                         . #xffb9)

        ;; Auxilliary Functions; note the duplicate definitions for left and right
        ;; function keys;  Sun keyboards and a few other manufactures have such
        ;; function key groups on the left and/or right sides of the keyboard.
        ;; We've not found a keyboard with more than 35 function keys total.
        (:F1                           . #xffbe)
        (:F2                           . #xffbf)
        (:F3                           . #xffc0)
        (:F4                           . #xffc1)
        (:F5                           . #xffc2)
        (:F6                           . #xffc3)
        (:F7                           . #xffc4)
        (:F8                           . #xffc5)
        (:F9                           . #xffc6)
        (:F10                          . #xffc7)
        (:F11                          . #xffc8)
        (:L1                           . #xffc8)
        (:F12                          . #xffc9)
        (:L2                           . #xffc9)
        (:F13                          . #xffca)
        (:L3                           . #xffca)
        (:F14                          . #xffcb)
        (:L4                           . #xffcb)
        (:F15                          . #xffcc)
        (:L5                           . #xffcc)
        (:F16                          . #xffcd)
        (:L6                           . #xffcd)
        (:F17                          . #xffce)
        (:L7                           . #xffce)
        (:F18                          . #xffcf)
        (:L8                           . #xffcf)
        (:F19                          . #xffd0)
        (:L9                           . #xffd0)
        (:F20                          . #xffd1)
        (:L10                          . #xffd1)
        (:F21                          . #xffd2)
        (:R1                           . #xffd2)
        (:F22                          . #xffd3)
        (:R2                           . #xffd3)
        (:F23                          . #xffd4)
        (:R3                           . #xffd4)
        (:F24                          . #xffd5)
        (:R4                           . #xffd5)
        (:F25                          . #xffd6)
        (:R5                           . #xffd6)
        (:F26                          . #xffd7)
        (:R6                           . #xffd7)
        (:F27                          . #xffd8)
        (:R7                           . #xffd8)
        (:F28                          . #xffd9)
        (:R8                           . #xffd9)
        (:F29                          . #xffda)
        (:R9                           . #xffda)
        (:F30                          . #xffdb)
        (:R10                          . #xffdb)
        (:F31                          . #xffdc)
        (:R11                          . #xffdc)
        (:F32                          . #xffdd)
        (:R12                          . #xffdd)
        (:F33                          . #xffde)
        (:R13                          . #xffde)
        (:F34                          . #xffdf)
        (:R14                          . #xffdf)
        (:F35                          . #xffe0)
        (:R15                          . #xffe0)

        (:SHIFT-LEFT                   . #xffe1)
        (:SHIFT-RIGHT                  . #xffe2)
        (:CONTROL-LEFT                 . #xffe3)
        (:CONTROL-RIGHT                . #xffe4)
        (:CAPS-LOCK                    . #xffe5)
        (:SHIFT-LOCK                   . #xffe6)
        (:META-LEFT                    . #xffe7)
        (:META-RIGHT                   . #xffe8)
        (:ALT-LEFT                     . #xffe9)
        (:ALT-RIGHT                    . #xffea)
        (:SUPER-LEFT                   . #xffeb)
        (:SUPER-RIGHT                  . #xffec)
        (:HYPER-LEFT                   . #xffed)
        (:HYPER-RIGHT                  . #xffee)

        ;; ISO 9995 Function and Modifier Keys
        ;; Byte 3 = 0xFE
        (:ISO-LOCK                     . #xfe01)
        (:ISO-LEVEL2-LATCH             . #xfe02)
        (:ISO-LEVEL3-SHIFT             . #xfe03)
        (:ISO-LEVEL3-LATCH             . #xfe04)
        (:ISO-LEVEL3-LOCK              . #xfe05)
        (:ISO-GROUP-SHIFT              . #xff7e)
        (:ISO-GROUP-LATCH              . #xfe06)
        (:ISO-GROUP-LOCK               . #xfe07)
        (:ISO-NEXT-GROUP               . #xfe08)
        (:ISO-NEXT-GROUP-LOCK          . #xfe09)
        (:ISO-PREV-GROUP               . #xfe0a)
        (:ISO-PREV-GROUP-LOCK          . #xfe0b)
        (:ISO-FIRST-GROUP              . #xfe0c)
        (:ISO-FIRST-GROUP-LOCK         . #xfe0d)
        (:ISO-LAST-GROUP               . #xfe0e)
        (:ISO-LAST-GROUP-LOCK          . #xfe0f)
        (:ISO-LEFT-TAB                 . #xfe20)
        (:ISO-MOVE-LINE-UP             . #xfe21)
        (:ISO-MOVE-LINE-DOWN           . #xfe22)
        (:ISO-PARTIAL-LINE-UP          . #xfe23)
        (:ISO-PARTIAL-LINE-DOWN        . #xfe24)
        (:ISO-PARTIAL-SPACE-LEFT       . #xfe25)
        (:ISO-PARTIAL-SPACE-RIGHT      . #xfe26)
        (:ISO-SET-MARGIN-LEFT          . #xfe27)
        (:ISO-SET-MARGIN-RIGHT         . #xfe28)
        (:ISO-RELEASE-MARGIN-LEFT      . #xfe29)
        (:ISO-RELEASE-MARGIN-RIGHT     . #xfe2a)
        (:ISO-RELEASE-BOTH-MARGINS     . #xfe2b)
        (:ISO-FAST-CURSOR-LEFT         . #xfe2c)
        (:ISO-FAST-CURSOR-RIGHT        . #xfe2d)
        (:ISO-FAST-CURSOR-UP           . #xfe2e)
        (:ISO-FAST-CURSOR-DOWN         . #xfe2f)
        (:ISO-CONTINUOUS-UNDERLINE     . #xfe30)
        (:ISO-DISCONTINUOUS-UNDERLINE  . #xfe31)
        (:ISO-EMPHASIZE                . #xfe32)
        (:ISO-CENTER-OBJECT            . #xfe33)
        (:ISO-ENTER                    . #xfe34)
        (:DEAD-GRAVE                   . #xfe50)
        (:DEAD-ACUTE                   . #xfe51)
        (:DEAD-CIRCUMFLEX              . #xfe52)
        (:DEAD-TILDE                   . #xfe53)
        (:DEAD-MACRON                  . #xfe54)
        (:DEAD-BREVE                   . #xfe55)
        (:DEAD-ABOVEDOT                . #xfe56)
        (:DEAD-DIAERESIS               . #xfe57)
        (:DEAD-ABOVE-RING              . #xfe58)
        (:DEAD-DOUBLEACUTE             . #xfe59)
        (:DEAD-CARON                   . #xfe5a)
        (:DEAD-CEDILLA                 . #xfe5b)
        (:DEAD-OGONEK                  . #xfe5c)
        (:DEAD-IOTA                    . #xfe5d)
        (:DEAD-VOICED-SOUND            . #xfe5e)
        (:DEAD-SEMIVOICED-SOUND        . #xfe5f)
        (:DEAD-BELOWDOT                . #xfe60)
        (:FIRST-VIRTUAL-SCREEN         . #xfed0)
        (:PREV-VIRTUAL-SCREEN          . #xfed1)
        (:NEXT-VIRTUAL-SCREEN          . #xfed2)
        (:LAST-VIRTUAL-SCREEN          . #xfed4)
        (:TERMINATE-SERVER             . #xfed5)
        (:ACCESS-X-ENABLE              . #xfe70)
        (:ACCESS-X-FEEDBACK-ENABLE     . #xfe71)
        (:REPEAT-KEYS-ENABLE           . #xfe72)
        (:SLOW-KEYS-ENABLE             . #xfe73)
        (:BOUNCE-KEYS-ENABLE           . #xfe74)
        (:STICKY-KEYS-ENABLE           . #xfe75)
        (:MOUSE-KEYS-ENABLE            . #xfe76)
        (:MOUSE-KEYS-ACCEL-ENABLE      . #xfe77)
        (:OVERLAY1-ENABLE              . #xfe78)
        (:OVERLAY2-ENABLE              . #xfe79)
        (:AUDIBLE-BELL-ENABLE          . #xfe7a)
        (:POINTER-LEFT                 . #xfee0)
        (:POINTER-RIGHT                . #xfee1)
        (:POINTER-UP                   . #xfee2)
        (:POINTER-DOWN                 . #xfee3)
        (:POINTER-UP-LEFT              . #xfee4)
        (:POINTER-UP-RIGHT             . #xfee5)
        (:POINTER-DOWN-LEFT            . #xfee6)
        (:POINTER-DOWN-RIGHT           . #xfee7)
        (:POINTER-BUTTON-DFLT          . #xfee8)
        (:POINTER-BUTTON1              . #xfee9)
        (:POINTER-BUTTON2              . #xfeea)
        (:POINTER-BUTTON3              . #xfeeb)
        (:POINTER-BUTTON4              . #xfeec)
        (:POINTER-BUTTON5              . #xfeed)
        (:POINTER-DBL-CLICK-DFLT       . #xfeee)
        (:POINTER-DBL-CLICK1           . #xfeef)
        (:POINTER-DBL-CLICK2           . #xfef0)
        (:POINTER-DBL-CLICK3           . #xfef1)
        (:POINTER-DBL-CLICK4           . #xfef2)
        (:POINTER-DBL-CLICK5           . #xfef3)
        (:POINTER-DRAG-DFLT            . #xfef4)
        (:POINTER-DRAG1                . #xfef5)
        (:POINTER-DRAG2                . #xfef6)
        (:POINTER-DRAG3                . #xfef7)
        (:POINTER-DRAG4                . #xfef8)
        (:POINTER-DRAG5                . #xfefd)
        (:POINTER-ENABLE-KEYS          . #xfef9)
        (:POINTER-ACCELERATE           . #xfefa)
        (:POINTER-DFLT-BTN-NEXT        . #xfefb)
        (:POINTER-DFLT-BTN-PREV        . #xfefc)

        ;; 3270 Terminal Keys
        ;; Byte 3 = 0xFD
        (:3270-DUPLICATE               . #xfd01)
        (:3270-FIELD-MARK              . #xfd02)
        (:3270-RIGHT2                  . #xfd03)
        (:3270-LEFT2                   . #xfd04)
        (:3270-BACK-TAB                . #xfd05)
        (:3270-ERASE-EOF               . #xfd06)
        (:3270-ERASE-INPUT             . #xfd07)
        (:3270-RESET                   . #xfd08)
        (:3270-QUIT                    . #xfd09)
        (:3270-PA1                     . #xfd0a)
        (:3270-PA2                     . #xfd0b)
        (:3270-PA3                     . #xfd0c)
        (:3270-TEST                    . #xfd0d)
        (:3270-ATTN                    . #xfd0e)
        (:3270-CURSOR-BLINK            . #xfd0f)
        (:3270-ALT-CURSOR              . #xfd10)
        (:3270-KEY-CLICK               . #xfd11)
        (:3270-JUMP                    . #xfd12)
        (:3270-IDENT                   . #xfd13)
        (:3270-RULE                    . #xfd14)
        (:3270-COPY                    . #xfd15)
        (:3270-PLAY                    . #xfd16)
        (:3270-SETUP                   . #xfd17)
        (:3270-RECORD                  . #xfd18)
        (:3270-CHANGE-SCREEN           . #xfd19)
        (:3270-DELETE-WORD             . #xfd1a)
        (:3270-EX-SELECT               . #xfd1b)
        (:3270-CURSOR-SELECT           . #xfd1c)
        (:3270-PRINT-SCREEN            . #xfd1d)
        (:3270-ENTER                   . #xfd1e)

        ;; Latin 1
        ;; Byte 3 = 0
        (:| |                          . #x20)
        (:|!|                          . #x21)
        (:|"|                          . #x22)
        (:|#|                          . #x23)
        (:$                            . #x24)
        (:%                            . #x25)
        (:&                            . #x26)
        (:|'|                          . #x27)
        (:|(|                          . #x28)
        (:|)|                          . #x29)
        (:*                            . #x2a)
        (:+                            . #x2b)
        (:|,|                          . #x2c)
        (:-                            . #x2d)
        (:\.                           . #x2e)
        (:/                            . #x2f)
        (:|0|                          . #x30)
        (:|1|                          . #x31)
        (:|2|                          . #x32)
        (:|3|                          . #x33)
        (:|4|                          . #x34)
        (:|5|                          . #x35)
        (:|6|                          . #x36)
        (:|7|                          . #x37)
        (:|8|                          . #x38)
        (:|9|                          . #x39)
        (:|:|                          . #x3a)
        (:|;|                          . #x3b)
        (:<                            . #x3c)
        (:=                            . #x3d)
        (:>                            . #x3e)
        (:|?|                          . #x3f)
        (:|@|                          . #x40)
        (:A                            . #x41)
        (:B                            . #x42)
        (:C                            . #x43)
        (:D                            . #x44)
        (:E                            . #x45)
        (:F                            . #x46)
        (:G                            . #x47)
        (:H                            . #x48)
        (:I                            . #x49)
        (:J                            . #x4a)
        (:K                            . #x4b)
        (:L                            . #x4c)
        (:M                            . #x4d)
        (:N                            . #x4e)
        (:O                            . #x4f)
        (:P                            . #x50)
        (:Q                            . #x51)
        (:R                            . #x52)
        (:S                            . #x53)
        (:T                            . #x54)
        (:U                            . #x55)
        (:V                            . #x56)
        (:W                            . #x57)
        (:X                            . #x58)
        (:Y                            . #x59)
        (:Z                            . #x5a)
        (:|[|                          . #x5b)
        (:\\                           . #x5c)
        (:|]|                          . #x5d)
        (:^                            . #x5e)
        (:_                            . #x5f)
        (:|`|                          . #x60)
        (:|a|                          . #x61)
        (:|b|                          . #x62)
        (:|c|                          . #x63)
        (:|d|                          . #x64)
        (:|e|                          . #x65)
        (:|f|                          . #x66)
        (:|g|                          . #x67)
        (:|h|                          . #x68)
        (:|i|                          . #x69)
        (:|j|                          . #x6a)
        (:|k|                          . #x6b)
        (:|l|                          . #x6c)
        (:|m|                          . #x6d)
        (:|n|                          . #x6e)
        (:|o|                          . #x6f)
        (:|p|                          . #x70)
        (:|q|                          . #x71)
        (:|r|                          . #x72)
        (:|s|                          . #x73)
        (:|t|                          . #x74)
        (:|u|                          . #x75)
        (:|v|                          . #x76)
        (:|w|                          . #x77)
        (:|x|                          . #x78)
        (:|y|                          . #x79)
        (:|z|                          . #x7a)
        (:|{|                          . #x7b)
        (:\|                           . #x7c)
        (:|}|                          . #x7d)
        (:|~|                          . #x7e)
        (:NOBREAKSPACE                 . #xa0)
        (:EXCLAMDOWN                   . #xa1)
        (:CENT                         . #xa2)
        (:STERLING                     . #xa3)
        (:CURRENCY                     . #xa4)
        (:YEN                          . #xa5)
        (:BROKENBAR                    . #xa6)
        (:SECTION                      . #xa7)
        (:-DIAERESIS                   . #xa8)
        (:COPYRIGHT                    . #xa9)
        (:ORDFEMININE                  . #xaa)
        (:GUILLEMOTLEFT                . #xab)
        (:NOTSIGN                      . #xac)
        (:HYPHEN                       . #xad)
        (:REGISTERED                   . #xae)
        (:-MACRON                      . #xaf)
        (:DEGREE                       . #xb0)
        (:PLUSMINUS                    . #xb1)
        (:TWOSUPERIOR                  . #xb2)
        (:THREESUPERIOR                . #xb3)
        (:-ACUTE                       . #xb4)
        (:MU                           . #xb5)
        (:PARAGRAPH                    . #xb6)
        (:PERIODCENTERED               . #xb7)
        (:-CEDILLA                     . #xb8)
        (:ONESUPERIOR                  . #xb9)
        (:MASCULINE                    . #xba)
        (:GUILLEMOTRIGHT               . #xbb)
        (:ONEQUARTER                   . #xbc)
        (:ONEHALF                      . #xbd)
        (:THREEQUARTERS                . #xbe)
        (:QUESTIONDOWN                 . #xbf)
        (:A-GRAVE                      . #xc0)
        (:A-ACUTE                      . #xc1)
        (:A-CIRCUMFLEX                 . #xc2)
        (:A-TILDE                      . #xc3)
        (:A-DIAERESIS                  . #xc4)
        (:A-RING                       . #xc5)
        (:AE                           . #xc6)
        (:C-CEDILLA                    . #xc7)
        (:E-GRAVE                      . #xc8)
        (:E-ACUTE                      . #xc9)
        (:E-CIRCUMFLEX                 . #xca)
        (:E-DIAERESIS                  . #xcb)
        (:I-GRAVE                      . #xcc)
        (:I-ACUTE                      . #xcd)
        (:I-CIRCUMFLEX                 . #xce)
        (:I-DIAERESIS                  . #xcf)
        (:ETH                          . #xd0)
        (:N-TILDE                      . #xd1)
        (:O-GRAVE                      . #xd2)
        (:O-ACUTE                      . #xd3)
        (:O-CIRCUMFLEX                 . #xd4)
        (:O-TILDE                      . #xd5)
        (:O-DIAERESIS                  . #xd6)
        (:MULTIPLY                     . #xd7)
        (:OOBLIQUE                     . #xd8)
        (:U-GRAVE                      . #xd9)
        (:U-ACUTE                      . #xda)
        (:U-CIRCUMFLEX                 . #xdb)
        (:U-DIAERESIS                  . #xdc)
        (:Y-ACUTE                      . #xdd)
        (:THORN                        . #xde)
        (:SSHARP                       . #xdf)
        (:|a-GRAVE|                    . #xe0)
        (:|a-ACUTE|                    . #xe1)
        (:|a-CIRCUMFLEX|               . #xe2)
        (:|a-TILDE|                    . #xe3)
        (:|a-DIAERESIS|                . #xe4)
        (:|a-RING|                     . #xe5)
        (:|ae|                         . #xe6)
        (:|c-CEDILLA|                  . #xe7)
        (:|e-GRAVE|                    . #xe8)
        (:|e-ACUTE|                    . #xe9)
        (:|e-CIRCUMFLEX|               . #xea)
        (:|e-DIAERESIS|                . #xeb)
        (:|i-GRAVE|                    . #xec)
        (:|i-ACUTE|                    . #xed)
        (:|i-CIRCUMFLEX|               . #xee)
        (:|i-DIAERESIS|                . #xef)
        (:|eth|                        . #xf0)
        (:|n-TILDE|                    . #xf1)
        (:|o-GRAVE|                    . #xf2)
        (:|o-ACUTE|                    . #xf3)
        (:|o-CIRCUMFLEX|               . #xf4)
        (:|o-TILDE|                    . #xf5)
        (:|o-DIAERESIS|                . #xf6)
        (:DIVISION                     . #xf7)
        (:O-SLASH                      . #xf8)
        (:|u-GRAVE|                    . #xf9)
        (:|u-ACUTE|                    . #xfa)
        (:|u-CIRCUMFLEX|               . #xfb)
        (:|u-DIAERESIS|                . #xfc)
        (:|y-ACUTE|                    . #xfd)
        (:|thorn|                      . #xfe)
        (:|y-DIAERESIS|                . #xff)

        ;; Latin 2
        ;; Byte 3 = 1
        (:A-OGONEK                     . #x1a1)
        (:-BREVE                       . #x1a2)
        (:L-STROKE                     . #x1a3)
        (:L-CARON                      . #x1a5)
        (:S-ACUTE                      . #x1a6)
        (:S-CARON                      . #x1a9)
        (:S-CEDILLA                    . #x1aa)
        (:T-CARON                      . #x1ab)
        (:Z-ACUTE                      . #x1ac)
        (:Z-CARON                      . #x1ae)
        (:Z-ABOVEDOT                   . #x1af)
        (:|a-OGONEK|                   . #x1b1)
        (:-OGONEK                      . #x1b2)
        (:|l-STROKE|                   . #x1b3)
        (:|l-CARON|                    . #x1b5)
        (:|s-ACUTE|                    . #x1b6)
        (:-CARON                       . #x1b7)
        (:|s-CARON|                    . #x1b9)
        (:|s-CEDILLA|                  . #x1ba)
        (:|t-CARON|                    . #x1bb)
        (:|z-ACUTE|                    . #x1bc)
        (:-DOUBLEACUTE                 . #x1bd)
        (:|z-CARON|                    . #x1be)
        (:|z-ABOVEDOT|                 . #x1bf)
        (:R-ACUTE                      . #x1c0)
        (:A-BREVE                      . #x1c3)
        (:L-ACUTE                      . #x1c5)
        (:C-ACUTE                      . #x1c6)
        (:C-CARON                      . #x1c8)
        (:E-OGONEK                     . #x1ca)
        (:E-CARON                      . #x1cc)
        (:D-CARON                      . #x1cf)
        (:D-STROKE                     . #x1d0)
        (:N-ACUTE                      . #x1d1)
        (:N-CARON                      . #x1d2)
        (:O-DOUBLEACUTE                . #x1d5)
        (:R-CARON                      . #x1d8)
        (:U-RING                       . #x1d9)
        (:U-DOUBLEACUTE                . #x1db)
        (:T-CEDILLA                    . #x1de)
        (:|r-ACUTE|                    . #x1e0)
        (:|a-BREVE|                    . #x1e3)
        (:|l-ACUTE|                    . #x1e5)
        (:|c-ACUTE|                    . #x1e6)
        (:|c-CARON|                    . #x1e8)
        (:|e-OGONEK|                   . #x1ea)
        (:|e-CARON|                    . #x1ec)
        (:|d-CARON|                    . #x1ef)
        (:|d-STROKE|                   . #x1f0)
        (:|n-ACUTE|                    . #x1f1)
        (:|n-CARON|                    . #x1f2)
        (:|o-DOUBLEACUTE|              . #x1f5)
        (:|u-DOUBLEACUTE|              . #x1fb)
        (:|r-CARON|                    . #x1f8)
        (:|u-RING|                     . #x1f9)
        (:|t-CEDILLA|                  . #x1fe)
        (:-ABOVEDOT                    . #x1ff)

        ;; Latin 3
        ;; Byte 3 = 2
        (:H-STROKE                     . #x2a1)
        (:H-CIRCUMFLEX                 . #x2a6)
        (:I-ABOVEDOT                   . #x2a9)
        (:G-BREVE                      . #x2ab)
        (:J-CIRCUMFLEX                 . #x2ac)
        (:|h-STROKE|                   . #x2b1)
        (:|h-CIRCUMFLEX|               . #x2b6)
        (:IDOTLESS                     . #x2b9)
        (:|g-BREVE|                    . #x2bb)
        (:|j-CIRCUMFLEX|               . #x2bc)
        (:C-ABOVEDOT                   . #x2c5)
        (:C-CIRCUMFLEX                 . #x2c6)
        (:G-ABOVEDOT                   . #x2d5)
        (:G-CIRCUMFLEX                 . #x2d8)
        (:U-BREVE                      . #x2dd)
        (:S-CIRCUMFLEX                 . #x2de)
        (:|c-ABOVEDOT|                 . #x2e5)
        (:|c-CIRCUMFLEX|               . #x2e6)
        (:|g-ABOVEDOT|                 . #x2f5)
        (:|g-CIRCUMFLEX|               . #x2f8)
        (:|u-BREVE|                    . #x2fd)
        (:|s-CIRCUMFLEX|               . #x2fe)

        ;; Latin 4
        ;; Byte 3 = 3
        (:KRA                          . #x3a2)
        (:R-CEDILLA                    . #x3a3)
        (:I-TILDE                      . #x3a5)
        (:L-CEDILLA                    . #x3a6)
        (:E-MACRON                     . #x3aa)
        (:G-CEDILLA                    . #x3ab)
        (:T-SLASH                      . #x3ac)
        (:|r-CEDILLA|                  . #x3b3)
        (:|i-TILDE|                    . #x3b5)
        (:|l-CEDILLA|                  . #x3b6)
        (:|e-MACRON|                   . #x3ba)
        (:|g-CEDILLA|                  . #x3bb)
        (:|t-SLASH|                    . #x3bc)
        (:ENG                          . #x3bd)
        (:|eng|                        . #x3bf)
        (:A-MACRON                     . #x3c0)
        (:I-OGONEK                     . #x3c7)
        (:E-ABOVEDOT                   . #x3cc)
        (:I-MACRON                     . #x3cf)
        (:N-CEDILLA                    . #x3d1)
        (:O-MACRON                     . #x3d2)
        (:K-CEDILLA                    . #x3d3)
        (:U-OGONEK                     . #x3d9)
        (:U-TILDE                      . #x3dd)
        (:U-MACRON                     . #x3de)
        (:|a-MACRON|                   . #x3e0)
        (:|i-OGONEK|                   . #x3e7)
        (:|e-ABOVEDOT|                 . #x3ec)
        (:|i-MACRON|                   . #x3ef)
        (:|n-CEDILLA|                  . #x3f1)
        (:|o-MACRON|                   . #x3f2)
        (:|k-CEDILLA|                  . #x3f3)
        (:|u-OGONEK|                   . #x3f9)
        (:|u-TILDE|                    . #x3fd)
        (:|u-MACRON|                   . #x3fe)

        ;; Latin-9 (a.k.a. Latin-0)
        ;; Byte 3 = 19
        (:OE                           . #x13bc)
        (:|oe|                         . #x13bd)
        (:Y-DIAERESIS                  . #x13be)

        ;; Katakana
        ;; Byte 3 = 4
        (:OVERLINE                     . #x47e)
        (:KANA-FULLSTOP                . #x4a1)
        (:KANA-OPENINGBRACKET          . #x4a2)
        (:KANA-CLOSINGBRACKET          . #x4a3)
        (:KANA-COMMA                   . #x4a4)
        (:KANA-CONJUNCTIVE             . #x4a5)
        (:KANA-WO                      . #x4a6)
        (:|KANA-a|                     . #x4a7)
        (:|KANA-i|                     . #x4a8)
        (:|KANA-u|                     . #x4a9)
        (:|KANA-e|                     . #x4aa)
        (:|KANA-o|                     . #x4ab)
        (:|KANA-ya|                    . #x4ac)
        (:|KANA-yu|                    . #x4ad)
        (:|KANA-yo|                    . #x4ae)
        (:|KANA-tsu|                   . #x4af)
        (:PROLONGEDSOUND               . #x4b0)
        (:KANA-A                       . #x4b1)
        (:KANA-I                       . #x4b2)
        (:KANA-U                       . #x4b3)
        (:KANA-E                       . #x4b4)
        (:KANA-O                       . #x4b5)
        (:KANA-KA                      . #x4b6)
        (:KANA-KI                      . #x4b7)
        (:KANA-KU                      . #x4b8)
        (:KANA-KE                      . #x4b9)
        (:KANA-KO                      . #x4ba)
        (:KANA-SA                      . #x4bb)
        (:KANA-SHI                     . #x4bc)
        (:KANA-SU                      . #x4bd)
        (:KANA-SE                      . #x4be)
        (:KANA-SO                      . #x4bf)
        (:KANA-TA                      . #x4c0)
        (:KANA-CHI                     . #x4c1)
        (:KANA-TSU                     . #x4c2)
        (:KANA-TE                      . #x4c3)
        (:KANA-TO                      . #x4c4)
        (:KANA-NA                      . #x4c5)
        (:KANA-NI                      . #x4c6)
        (:KANA-NU                      . #x4c7)
        (:KANA-NE                      . #x4c8)
        (:KANA-NO                      . #x4c9)
        (:KANA-HA                      . #x4ca)
        (:KANA-HI                      . #x4cb)
        (:KANA-FU                      . #x4cc)
        (:KANA-HE                      . #x4cd)
        (:KANA-HO                      . #x4ce)
        (:KANA-MA                      . #x4cf)
        (:KANA-MI                      . #x4d0)
        (:KANA-MU                      . #x4d1)
        (:KANA-ME                      . #x4d2)
        (:KANA-MO                      . #x4d3)
        (:KANA-YA                      . #x4d4)
        (:KANA-YU                      . #x4d5)
        (:KANA-YO                      . #x4d6)
        (:KANA-RA                      . #x4d7)
        (:KANA-RI                      . #x4d8)
        (:KANA-RU                      . #x4d9)
        (:KANA-RE                      . #x4da)
        (:KANA-RO                      . #x4db)
        (:KANA-WA                      . #x4dc)
        (:KANA-N                       . #x4dd)
        (:VOICEDSOUND                  . #x4de)
        (:SEMIVOICEDSOUND              . #x4df)
        (:KANA-SWITCH                  . #xff7e)

        ;; Arabic
        ;; Byte 3 = 5
        (:ARABIC-COMMA                 . #x5ac)
        (:ARABIC-SEMICOLON             . #x5bb)
        (:ARABIC-QUESTION-MARK         . #x5bf)
        (:ARABIC-HAMZA                 . #x5c1)
        (:ARABIC-MADDAONALEF           . #x5c2)
        (:ARABIC-HAMZAONALEF           . #x5c3)
        (:ARABIC-HAMZAONWAW            . #x5c4)
        (:ARABIC-HAMZAUNDERALEF        . #x5c5)
        (:ARABIC-HAMZAONYEH            . #x5c6)
        (:ARABIC-ALEF                  . #x5c7)
        (:ARABIC-BEH                   . #x5c8)
        (:ARABIC-TEHMARBUTA            . #x5c9)
        (:ARABIC-TEH                   . #x5ca)
        (:ARABIC-THEH                  . #x5cb)
        (:ARABIC-JEEM                  . #x5cc)
        (:ARABIC-HAH                   . #x5cd)
        (:ARABIC-KHAH                  . #x5ce)
        (:ARABIC-DAL                   . #x5cf)
        (:ARABIC-THAL                  . #x5d0)
        (:ARABIC-RA                    . #x5d1)
        (:ARABIC-ZAIN                  . #x5d2)
        (:ARABIC-SEEN                  . #x5d3)
        (:ARABIC-SHEEN                 . #x5d4)
        (:ARABIC-SAD                   . #x5d5)
        (:ARABIC-DAD                   . #x5d6)
        (:ARABIC-TAH                   . #x5d7)
        (:ARABIC-ZAH                   . #x5d8)
        (:ARABIC-AIN                   . #x5d9)
        (:ARABIC-GHAIN                 . #x5da)
        (:ARABIC-TATWEEL               . #x5e0)
        (:ARABIC-FEH                   . #x5e1)
        (:ARABIC-QAF                   . #x5e2)
        (:ARABIC-KAF                   . #x5e3)
        (:ARABIC-LAM                   . #x5e4)
        (:ARABIC-MEEM                  . #x5e5)
        (:ARABIC-NOON                  . #x5e6)
        (:ARABIC-HA                    . #x5e7)
        (:ARABIC-WAW                   . #x5e8)
        (:ARABIC-ALEFMAKSURA           . #x5e9)
        (:ARABIC-YEH                   . #x5ea)
        (:ARABIC-FATHATAN              . #x5eb)
        (:ARABIC-DAMMATAN              . #x5ec)
        (:ARABIC-KASRATAN              . #x5ed)
        (:ARABIC-FATHA                 . #x5ee)
        (:ARABIC-DAMMA                 . #x5ef)
        (:ARABIC-KASRA                 . #x5f0)
        (:ARABIC-SHADDA                . #x5f1)
        (:ARABIC-SUKUN                 . #x5f2)
        (:ARABIC-SWITCH                . #xff7e)

        ;; Cyrillic
        ;; Byte 3 = 6
        (:|SERBIAN-dje|                . #x6a1)
        (:|MACEDONIA-gje|              . #x6a2)
        (:|CYRILLIC-io|                . #x6a3)
        (:|UKRAINIAN-ie|               . #x6a4)
        (:|MACEDONIA-dse|              . #x6a5)
        (:|UKRAINIAN-i|                . #x6a6)
        (:|UKRAINIAN-yi|               . #x6a7)
        (:|CYRILLIC-je|                . #x6a8)
        (:|CYRILLIC-lje|               . #x6a9)
        (:|CYRILLIC-nje|               . #x6aa)
        (:|SERBIAN-tshe|               . #x6ab)
        (:|MACEDONIA-kje|              . #x6ac)
        (:|BYELORUSSIAN-shortu|        . #x6ae)
        (:|CYRILLIC-dzhe|              . #x6af)
        (:NUMEROSIGN                   . #x6b0)
        (:SERBIAN-DJE                  . #x6b1)
        (:MACEDONIA-GJE                . #x6b2)
        (:CYRILLIC-IO                  . #x6b3)
        (:UKRAINIAN-IE                 . #x6b4)
        (:MACEDONIA-DSE                . #x6b5)
        (:UKRAINIAN-I                  . #x6b6)
        (:UKRAINIAN-YI                 . #x6b7)
        (:CYRILLIC-JE                  . #x6b8)
        (:CYRILLIC-LJE                 . #x6b9)
        (:CYRILLIC-NJE                 . #x6ba)
        (:SERBIAN-TSHE                 . #x6bb)
        (:MACEDONIA-KJE                . #x6bc)
        (:BYELORUSSIAN-SHORTU          . #x6be)
        (:CYRILLIC-DZHE                . #x6bf)
        (:|CYRILLIC-yu|                . #x6c0)
        (:|CYRILLIC-a|                 . #x6c1)
        (:|CYRILLIC-be|                . #x6c2)
        (:|CYRILLIC-tse|               . #x6c3)
        (:|CYRILLIC-de|                . #x6c4)
        (:|CYRILLIC-ie|                . #x6c5)
        (:|CYRILLIC-ef|                . #x6c6)
        (:|CYRILLIC-ghe|               . #x6c7)
        (:|CYRILLIC-ha|                . #x6c8)
        (:|CYRILLIC-i|                 . #x6c9)
        (:|CYRILLIC-shorti|            . #x6ca)
        (:|CYRILLIC-ka|                . #x6cb)
        (:|CYRILLIC-el|                . #x6cc)
        (:|CYRILLIC-em|                . #x6cd)
        (:|CYRILLIC-en|                . #x6ce)
        (:|CYRILLIC-o|                 . #x6cf)
        (:|CYRILLIC-pe|                . #x6d0)
        (:|CYRILLIC-ya|                . #x6d1)
        (:|CYRILLIC-er|                . #x6d2)
        (:|CYRILLIC-es|                . #x6d3)
        (:|CYRILLIC-te|                . #x6d4)
        (:|CYRILLIC-u|                 . #x6d5)
        (:|CYRILLIC-zhe|               . #x6d6)
        (:|CYRILLIC-ve|                . #x6d7)
        (:|CYRILLIC-softsign|          . #x6d8)
        (:|CYRILLIC-yeru|              . #x6d9)
        (:|CYRILLIC-ze|                . #x6da)
        (:|CYRILLIC-sha|               . #x6db)
        (:|CYRILLIC-e|                 . #x6dc)
        (:|CYRILLIC-shcha|             . #x6dd)
        (:|CYRILLIC-che|               . #x6de)
        (:|CYRILLIC-hardsign|          . #x6df)
        (:CYRILLIC-YU                  . #x6e0)
        (:CYRILLIC-A                   . #x6e1)
        (:CYRILLIC-BE                  . #x6e2)
        (:CYRILLIC-TSE                 . #x6e3)
        (:CYRILLIC-DE                  . #x6e4)
        (:CYRILLIC-IE                  . #x6e5)
        (:CYRILLIC-EF                  . #x6e6)
        (:CYRILLIC-GHE                 . #x6e7)
        (:CYRILLIC-HA                  . #x6e8)
        (:CYRILLIC-I                   . #x6e9)
        (:CYRILLIC-SHORTI              . #x6ea)
        (:CYRILLIC-KA                  . #x6eb)
        (:CYRILLIC-EL                  . #x6ec)
        (:CYRILLIC-EM                  . #x6ed)
        (:CYRILLIC-EN                  . #x6ee)
        (:CYRILLIC-O                   . #x6ef)
        (:CYRILLIC-PE                  . #x6f0)
        (:CYRILLIC-YA                  . #x6f1)
        (:CYRILLIC-ER                  . #x6f2)
        (:CYRILLIC-ES                  . #x6f3)
        (:CYRILLIC-TE                  . #x6f4)
        (:CYRILLIC-U                   . #x6f5)
        (:CYRILLIC-ZHE                 . #x6f6)
        (:CYRILLIC-VE                  . #x6f7)
        (:CYRILLIC-SOFTSIGN            . #x6f8)
        (:CYRILLIC-YERU                . #x6f9)
        (:CYRILLIC-ZE                  . #x6fa)
        (:CYRILLIC-SHA                 . #x6fb)
        (:CYRILLIC-E                   . #x6fc)
        (:CYRILLIC-SHCHA               . #x6fd)
        (:CYRILLIC-CHE                 . #x6fe)
        (:CYRILLIC-HARDSIGN            . #x6ff)

        ;; Greek
        ;; Byte 3 = 7
        (:GREEK-ALPHA-ACCENT           . #x7a1)
        (:GREEK-EPSILON-ACCENT         . #x7a2)
        (:GREEK-ETA-ACCENT             . #x7a3)
        (:GREEK-IOTA-ACCENT            . #x7a4)
        (:GREEK-IOTA-DIAERESIS         . #x7a5)
        (:GREEK-OMICRON-ACCENT         . #x7a7)
        (:GREEK-UPSILON-ACCENT         . #x7a8)
        (:GREEK-UPSILON-DIERESIS       . #x7a9)
        (:GREEK-OMEGA-ACCENT           . #x7ab)
        (:GREEK-ACCENT-DIERESIS        . #x7ae)
        (:GREEK-HORIZBAR               . #x7af)
        (:|GREEK-alpha-ACCENT|         . #x7b1)
        (:|GREEK-epsilon-ACCENT|       . #x7b2)
        (:|GREEK-eta-ACCENT|           . #x7b3)
        (:|GREEK-iota-ACCENT|          . #x7b4)
        (:GREEK-IOTA-DIERESIS          . #x7b5)
        (:GREEK-IOTAACCENT-DIERESIS    . #x7b6)
        (:|GREEK-omicron-ACCENT|       . #x7b7)
        (:|GREEK-upsilon-ACCENT|       . #x7b8)
        (:|GREEK-upsilon-DIERESIS|     . #x7b9)
        (:GREEK-UPSILONACCENT-DIERESIS . #x7ba)
        (:|GREEK-omega-ACCENT|         . #x7bb)
        (:GREEK-ALPHA                  . #x7c1)
        (:GREEK-BETA                   . #x7c2)
        (:GREEK-GAMMA                  . #x7c3)
        (:GREEK-DELTA                  . #x7c4)
        (:GREEK-EPSILON                . #x7c5)
        (:GREEK-ZETA                   . #x7c6)
        (:GREEK-ETA                    . #x7c7)
        (:GREEK-THETA                  . #x7c8)
        (:GREEK-IOTA                   . #x7c9)
        (:GREEK-KAPPA                  . #x7ca)
        (:GREEK-LAMDA                  . #x7cb)
        (:GREEK-LAMBDA                 . #x7cb)
        (:GREEK-MU                     . #x7cc)
        (:GREEK-NU                     . #x7cd)
        (:GREEK-XI                     . #x7ce)
        (:GREEK-OMICRON                . #x7cf)
        (:GREEK-PI                     . #x7d0)
        (:GREEK-RHO                    . #x7d1)
        (:GREEK-SIGMA                  . #x7d2)
        (:GREEK-TAU                    . #x7d4)
        (:GREEK-UPSILON                . #x7d5)
        (:GREEK-PHI                    . #x7d6)
        (:GREEK-CHI                    . #x7d7)
        (:GREEK-PSI                    . #x7d8)
        (:GREEK-OMEGA                  . #x7d9)
        (:|GREEK-alpha|                . #x7e1)
        (:|GREEK-beta|                 . #x7e2)
        (:|GREEK-gamma|                . #x7e3)
        (:|GREEK-delta|                . #x7e4)
        (:|GREEK-epsilon|              . #x7e5)
        (:|GREEK-zeta|                 . #x7e6)
        (:|GREEK-eta|                  . #x7e7)
        (:|GREEK-theta|                . #x7e8)
        (:|GREEK-iota|                 . #x7e9)
        (:|GREEK-kappa|                . #x7ea)
        (:|GREEK-lamda|                . #x7eb)
        (:|GREEK-lambda|               . #x7eb)
        (:|GREEK-mu|                   . #x7ec)
        (:|GREEK-nu|                   . #x7ed)
        (:|GREEK-xi|                   . #x7ee)
        (:|GREEK-omicron|              . #x7ef)
        (:|GREEK-pi|                   . #x7f0)
        (:|GREEK-rho|                  . #x7f1)
        (:|GREEK-sigma|                . #x7f2)
        (:GREEK-FINALSMALLSIGMA        . #x7f3)
        (:|GREEK-tau|                  . #x7f4)
        (:|GREEK-upsilon|              . #x7f5)
        (:|GREEK-phi|                  . #x7f6)
        (:|GREEK-chi|                  . #x7f7)
        (:|GREEK-psi|                  . #x7f8)
        (:|GREEK-omega|                . #x7f9)
        (:GREEK-SWITCH                 . #xff7e)

        ;; Technical
        ;; Byte 3 = 8
        (:LEFTRADICAL                  . #x8a1)
        (:TOPLEFTRADICAL               . #x8a2)
        (:HORIZCONNECTOR               . #x8a3)
        (:TOPINTEGRAL                  . #x8a4)
        (:BOTINTEGRAL                  . #x8a5)
        (:VERTCONNECTOR                . #x8a6)
        (:TOPLEFTSQBRACKET             . #x8a7)
        (:BOTLEFTSQBRACKET             . #x8a8)
        (:TOPRIGHTSQBRACKET            . #x8a9)
        (:BOTRIGHTSQBRACKET            . #x8aa)
        (:TOPLEFTPARENS                . #x8ab)
        (:BOTLEFTPARENS                . #x8ac)
        (:TOPRIGHTPARENS               . #x8ad)
        (:BOTRIGHTPARENS               . #x8ae)
        (:LEFTMIDDLECURLYBRACE         . #x8af)
        (:RIGHTMIDDLECURLYBRACE        . #x8b0)
        (:TOPLEFTSUMMATION             . #x8b1)
        (:BOTLEFTSUMMATION             . #x8b2)
        (:TOPVERTSUMMATIONCONNECTOR    . #x8b3)
        (:BOTVERTSUMMATIONCONNECTOR    . #x8b4)
        (:TOPRIGHTSUMMATION            . #x8b5)
        (:BOTRIGHTSUMMATION            . #x8b6)
        (:RIGHTMIDDLESUMMATION         . #x8b7)
        (:LESSTHANEQUAL                . #x8bc)
        (:NOTEQUAL                     . #x8bd)
        (:GREATERTHANEQUAL             . #x8be)
        (:INTEGRAL                     . #x8bf)
        (:THEREFORE                    . #x8c0)
        (:VARIATION                    . #x8c1)
        (:INFINITY                     . #x8c2)
        (:NABLA                        . #x8c5)
        (:APPROXIMATE                  . #x8c8)
        (:SIMILAREQUAL                 . #x8c9)
        (:IFONLYIF                     . #x8cd)
        (:IMPLIES                      . #x8ce)
        (:IDENTICAL                    . #x8cf)
        (:RADICAL                      . #x8d6)
        (:INCLUDEDIN                   . #x8da)
        (:INCLUDES                     . #x8db)
        (:INTERSECTION                 . #x8dc)
        (:UNION                        . #x8dd)
        (:LOGICALAND                   . #x8de)
        (:LOGICALOR                    . #x8df)
        (:PARTIALDERIVATIVE            . #x8ef)
        (:FUNCTION                     . #x8f6)
        (:LEFTARROW                    . #x8fb)
        (:UPARROW                      . #x8fc)
        (:RIGHTARROW                   . #x8fd)
        (:DOWNARROW                    . #x8fe)

        ;; Special
        ;; Byte 3 = 9
        (:BLANK                        . #x9df)
        (:SOLIDDIAMOND                 . #x9e0)
        (:CHECKERBOARD                 . #x9e1)
        (:HT                           . #x9e2)
        (:FF                           . #x9e3)
        (:CR                           . #x9e4)
        (:LF                           . #x9e5)
        (:NL                           . #x9e8)
        (:VT                           . #x9e9)
        (:LOWRIGHTCORNER               . #x9ea)
        (:UPRIGHTCORNER                . #x9eb)
        (:UPLEFTCORNER                 . #x9ec)
        (:LOWLEFTCORNER                . #x9ed)
        (:CROSSINGLINES                . #x9ee)
        (:HORIZLINESCAN1               . #x9ef)
        (:HORIZLINESCAN3               . #x9f0)
        (:HORIZLINESCAN5               . #x9f1)
        (:HORIZLINESCAN7               . #x9f2)
        (:HORIZLINESCAN9               . #x9f3)
        (:LEFTT                        . #x9f4)
        (:RIGHTT                       . #x9f5)
        (:BOTT                         . #x9f6)
        (:TOPT                         . #x9f7)
        (:VERTBAR                      . #x9f8)

        ;; Publishing
        ;; Byte 3 = a
        (:EMSPACE                      . #xaa1)
        (:ENSPACE                      . #xaa2)
        (:EM3SPACE                     . #xaa3)
        (:EM4SPACE                     . #xaa4)
        (:DIGITSPACE                   . #xaa5)
        (:PUNCTSPACE                   . #xaa6)
        (:THINSPACE                    . #xaa7)
        (:HAIRSPACE                    . #xaa8)
        (:EMDASH                       . #xaa9)
        (:ENDASH                       . #xaaa)
        (:SIGNIFBLANK                  . #xaac)
        (:ELLIPSIS                     . #xaae)
        (:DOUBBASELINEDOT              . #xaaf)
        (:ONETHIRD                     . #xab0)
        (:TWOTHIRDS                    . #xab1)
        (:ONEFIFTH                     . #xab2)
        (:TWOFIFTHS                    . #xab3)
        (:THREEFIFTHS                  . #xab4)
        (:FOURFIFTHS                   . #xab5)
        (:ONESIXTH                     . #xab6)
        (:FIVESIXTHS                   . #xab7)
        (:CAREOF                       . #xab8)
        (:FIGDASH                      . #xabb)
        (:LEFTANGLEBRACKET             . #xabc)
        (:DECIMALPOINT                 . #xabd)
        (:RIGHTANGLEBRACKET            . #xabe)
        (:MARKER                       . #xabf)
        (:ONEEIGHTH                    . #xac3)
        (:THREEEIGHTHS                 . #xac4)
        (:FIVEEIGHTHS                  . #xac5)
        (:SEVENEIGHTHS                 . #xac6)
        (:TRADEMARK                    . #xac9)
        (:SIGNATUREMARK                . #xaca)
        (:TRADEMARKINCIRCLE            . #xacb)
        (:LEFTOPENTRIANGLE             . #xacc)
        (:RIGHTOPENTRIANGLE            . #xacd)
        (:EMOPENCIRCLE                 . #xace)
        (:EMOPENRECTANGLE              . #xacf)
        (:LEFTSINGLEQUOTEMARK          . #xad0)
        (:RIGHTSINGLEQUOTEMARK         . #xad1)
        (:LEFTDOUBLEQUOTEMARK          . #xad2)
        (:RIGHTDOUBLEQUOTEMARK         . #xad3)
        (:PRESCRIPTION                 . #xad4)
        (:MINUTES                      . #xad6)
        (:SECONDS                      . #xad7)
        (:LATINCROSS                   . #xad9)
        (:HEXAGRAM                     . #xada)
        (:FILLEDRECTBULLET             . #xadb)
        (:FILLEDLEFTTRIBULLET          . #xadc)
        (:FILLEDRIGHTTRIBULLET         . #xadd)
        (:EMFILLEDCIRCLE               . #xade)
        (:EMFILLEDRECT                 . #xadf)
        (:ENOPENCIRCBULLET             . #xae0)
        (:ENOPENSQUAREBULLET           . #xae1)
        (:OPENRECTBULLET               . #xae2)
        (:OPENTRIBULLETUP              . #xae3)
        (:OPENTRIBULLETDOWN            . #xae4)
        (:OPENSTAR                     . #xae5)
        (:ENFILLEDCIRCBULLET           . #xae6)
        (:ENFILLEDSQBULLET             . #xae7)
        (:FILLEDTRIBULLETUP            . #xae8)
        (:FILLEDTRIBULLETDOWN          . #xae9)
        (:LEFTPOINTER                  . #xaea)
        (:RIGHTPOINTER                 . #xaeb)
        (:CLUB                         . #xaec)
        (:DIAMOND                      . #xaed)
        (:HEART                        . #xaee)
        (:MALTESECROSS                 . #xaf0)
        (:DAGGER                       . #xaf1)
        (:DOUBLEDAGGER                 . #xaf2)
        (:CHECKMARK                    . #xaf3)
        (:BALLOTCROSS                  . #xaf4)
        (:MUSICALSHARP                 . #xaf5)
        (:MUSICALFLAT                  . #xaf6)
        (:MALESYMBOL                   . #xaf7)
        (:FEMALESYMBOL                 . #xaf8)
        (:TELEPHONE                    . #xaf9)
        (:TELEPHONERECORDER            . #xafa)
        (:PHONOGRAPHCOPYRIGHT          . #xafb)
        (:CARET                        . #xafc)
        (:SINGLELOWQUOTEMARK           . #xafd)
        (:DOUBLELOWQUOTEMARK           . #xafe)
        (:CURSOR                       . #xaff)

        ;; APL
        ;; Byte 3 = b
        (:LEFTCARET                    . #xba3)
        (:RIGHTCARET                   . #xba6)
        (:DOWNCARET                    . #xba8)
        (:UPCARET                      . #xba9)
        (:OVERBAR                      . #xbc0)
        (:DOWNTACK                     . #xbc2)
        (:UPSHOE                       . #xbc3)
        (:DOWNSTILE                    . #xbc4)
        (:UNDERBAR                     . #xbc6)
        (:JOT                          . #xbca)
        (:QUAD                         . #xbcc)
        (:UPTACK                       . #xbce)
        (:CIRCLE                       . #xbcf)
        (:UPSTILE                      . #xbd3)
        (:DOWNSHOE                     . #xbd6)
        (:RIGHTSHOE                    . #xbd8)
        (:LEFTSHOE                     . #xbda)
        (:LEFTTACK                     . #xbdc)
        (:RIGHTTACK                    . #xbfc)

        ;; Hebrew
        ;; Byte 3 = c
        (:HEBREW-DOUBLELOWLINE         . #xcdf)
        (:HEBREW-ALEPH                 . #xce0)
        (:HEBREW-BET                   . #xce1)
        (:HEBREW-GIMEL                 . #xce2)
        (:HEBREW-DALET                 . #xce3)
        (:HEBREW-HE                    . #xce4)
        (:HEBREW-WAW                   . #xce5)
        (:HEBREW-ZAIN                  . #xce6)
        (:HEBREW-CHET                  . #xce7)
        (:HEBREW-TET                   . #xce8)
        (:HEBREW-YOD                   . #xce9)
        (:HEBREW-FINALKAPH             . #xcea)
        (:HEBREW-KAPH                  . #xceb)
        (:HEBREW-LAMED                 . #xcec)
        (:HEBREW-FINALMEM              . #xced)
        (:HEBREW-MEM                   . #xcee)
        (:HEBREW-FINALNUN              . #xcef)
        (:HEBREW-NUN                   . #xcf0)
        (:HEBREW-SAMECH                . #xcf1)
        (:HEBREW-AYIN                  . #xcf2)
        (:HEBREW-FINALPE               . #xcf3)
        (:HEBREW-PE                    . #xcf4)
        (:HEBREW-FINALZADE             . #xcf5)
        (:HEBREW-ZADE                  . #xcf6)
        (:HEBREW-QOPH                  . #xcf7)
        (:HEBREW-RESH                  . #xcf8)
        (:HEBREW-SHIN                  . #xcf9)
        (:HEBREW-TAW                   . #xcfa)
        (:HEBREW-SWITCH                . #xff7e)

        ;; Thai
        ;; Byte 3 = d
        (:THAI-KOKAI                   . #xda1)
        (:THAI-KHOKHAI                 . #xda2)
        (:THAI-KHOKHUAT                . #xda3)
        (:THAI-KHOKHWAI                . #xda4)
        (:THAI-KHOKHON                 . #xda5)
        (:THAI-KHORAKHANG              . #xda6)
        (:THAI-NGONGU                  . #xda7)
        (:THAI-CHOCHAN                 . #xda8)
        (:THAI-CHOCHING                . #xda9)
        (:THAI-CHOCHANG                . #xdaa)
        (:THAI-SOSO                    . #xdab)
        (:THAI-CHOCHOE                 . #xdac)
        (:THAI-YOYING                  . #xdad)
        (:THAI-DOCHADA                 . #xdae)
        (:THAI-TOPATAK                 . #xdaf)
        (:THAI-THOTHAN                 . #xdb0)
        (:THAI-THONANGMONTHO           . #xdb1)
        (:THAI-THOPHUTHAO              . #xdb2)
        (:THAI-NONEN                   . #xdb3)
        (:THAI-DODEK                   . #xdb4)
        (:THAI-TOTAO                   . #xdb5)
        (:THAI-THOTHUNG                . #xdb6)
        (:THAI-THOTHAHAN               . #xdb7)
        (:THAI-THOTHONG                . #xdb8)
        (:THAI-NONU                    . #xdb9)
        (:THAI-BOBAIMAI                . #xdba)
        (:THAI-POPLA                   . #xdbb)
        (:THAI-PHOPHUNG                . #xdbc)
        (:THAI-FOFA                    . #xdbd)
        (:THAI-PHOPHAN                 . #xdbe)
        (:THAI-FOFAN                   . #xdbf)
        (:THAI-PHOSAMPHAO              . #xdc0)
        (:THAI-MOMA                    . #xdc1)
        (:THAI-YOYAK                   . #xdc2)
        (:THAI-RORUA                   . #xdc3)
        (:THAI-RU                      . #xdc4)
        (:THAI-LOLING                  . #xdc5)
        (:THAI-LU                      . #xdc6)
        (:THAI-WOWAEN                  . #xdc7)
        (:THAI-SOSALA                  . #xdc8)
        (:THAI-SORUSI                  . #xdc9)
        (:THAI-SOSUA                   . #xdca)
        (:THAI-HOHIP                   . #xdcb)
        (:THAI-LOCHULA                 . #xdcc)
        (:THAI-OANG                    . #xdcd)
        (:THAI-HONOKHUK                . #xdce)
        (:THAI-PAIYANNOI               . #xdcf)
        (:THAI-SARAA                   . #xdd0)
        (:THAI-MAIHANAKAT              . #xdd1)
        (:THAI-SARAAA                  . #xdd2)
        (:THAI-SARAAM                  . #xdd3)
        (:THAI-SARAI                   . #xdd4)
        (:THAI-SARAII                  . #xdd5)
        (:THAI-SARAUE                  . #xdd6)
        (:THAI-SARAUEE                 . #xdd7)
        (:THAI-SARAU                   . #xdd8)
        (:THAI-SARAUU                  . #xdd9)
        (:THAI-PHINTHU                 . #xdda)
        (:THAI-MAIHANAKAT-MAITHO       . #xdde)
        (:THAI-BAHT                    . #xddf)
        (:THAI-SARAE                   . #xde0)
        (:THAI-SARAAE                  . #xde1)
        (:THAI-SARAO                   . #xde2)
        (:THAI-SARAAIMAIMUAN           . #xde3)
        (:THAI-SARAAIMAIMALAI          . #xde4)
        (:THAI-LAKKHANGYAO             . #xde5)
        (:THAI-MAIYAMOK                . #xde6)
        (:THAI-MAITAIKHU               . #xde7)
        (:THAI-MAIEK                   . #xde8)
        (:THAI-MAITHO                  . #xde9)
        (:THAI-MAITRI                  . #xdea)
        (:THAI-MAICHATTAWA             . #xdeb)
        (:THAI-THANTHAKHAT             . #xdec)
        (:THAI-NIKHAHIT                . #xded)
        (:THAI-LEKSUN                  . #xdf0)
        (:THAI-LEKNUNG                 . #xdf1)
        (:THAI-LEKSONG                 . #xdf2)
        (:THAI-LEKSAM                  . #xdf3)
        (:THAI-LEKSI                   . #xdf4)
        (:THAI-LEKHA                   . #xdf5)
        (:THAI-LEKHOK                  . #xdf6)
        (:THAI-LEKCHET                 . #xdf7)
        (:THAI-LEKPAET                 . #xdf8)
        (:THAI-LEKKAO                  . #xdf9)

        ;; Korean
        ;; Byte 3 = e
        (:HANGUL                       . #xff31)
        (:HANGUL-START                 . #xff32)
        (:HANGUL-END                   . #xff33)
        (:HANGUL-HANJA                 . #xff34)
        (:HANGUL-JAMO                  . #xff35)
        (:HANGUL-ROMAJA                . #xff36)
        (:HANGUL-CODEINPUT             . #xff37)
        (:HANGUL-JEONJA                . #xff38)
        (:HANGUL-BANJA                 . #xff39)
        (:HANGUL-PRE-HANJA             . #xff3a)
        (:HANGUL-POST-HANJA            . #xff3b)
        (:HANGUL-SINGLE-CANDIDATE      . #xff3c)
        (:HANGUL-MULTIPLE-CANDIDATE    . #xff3d)
        (:HANGUL-PREVIOUS-CANDIDATE    . #xff3e)
        (:HANGUL-SPECIAL               . #xff3f)
        (:HANGUL-SWITCH                . #xff7e)
        (:HANGUL-KIYEOG                . #xea1)
        (:HANGUL-SSANG-KIYEOG          . #xea2)
        (:HANGUL-KIYEOG-SIOS           . #xea3)
        (:HANGUL-NIEUN                 . #xea4)
        (:HANGUL-NIEUN-JIEUJ           . #xea5)
        (:HANGUL-NIEUN-HIEUH           . #xea6)
        (:HANGUL-DIKEUD                . #xea7)
        (:HANGUL-SSANG-DIKEUD          . #xea8)
        (:HANGUL-RIEUL                 . #xea9)
        (:HANGUL-RIEUL-KIYEOG          . #xeaa)
        (:HANGUL-RIEUL-MIEUM           . #xeab)
        (:HANGUL-RIEUL-PIEUB           . #xeac)
        (:HANGUL-RIEUL-SIOS            . #xead)
        (:HANGUL-RIEUL-TIEUT           . #xeae)
        (:HANGUL-RIEUL-PHIEUF          . #xeaf)
        (:HANGUL-RIEUL-HIEUH           . #xeb0)
        (:HANGUL-MIEUM                 . #xeb1)
        (:HANGUL-PIEUB                 . #xeb2)
        (:HANGUL-SSANG-PIEUB           . #xeb3)
        (:HANGUL-PIEUB-SIOS            . #xeb4)
        (:HANGUL-SIOS                  . #xeb5)
        (:HANGUL-SSANG-SIOS            . #xeb6)
        (:HANGUL-IEUNG                 . #xeb7)
        (:HANGUL-JIEUJ                 . #xeb8)
        (:HANGUL-SSANG-JIEUJ           . #xeb9)
        (:HANGUL-CIEUC                 . #xeba)
        (:HANGUL-KHIEUQ                . #xebb)
        (:HANGUL-TIEUT                 . #xebc)
        (:HANGUL-PHIEUF                . #xebd)
        (:HANGUL-HIEUH                 . #xebe)
        (:HANGUL-A                     . #xebf)
        (:HANGUL-AE                    . #xec0)
        (:HANGUL-YA                    . #xec1)
        (:HANGUL-YAE                   . #xec2)
        (:HANGUL-EO                    . #xec3)
        (:HANGUL-E                     . #xec4)
        (:HANGUL-YEO                   . #xec5)
        (:HANGUL-YE                    . #xec6)
        (:HANGUL-O                     . #xec7)
        (:HANGUL-WA                    . #xec8)
        (:HANGUL-WAE                   . #xec9)
        (:HANGUL-OE                    . #xeca)
        (:HANGUL-YO                    . #xecb)
        (:HANGUL-U                     . #xecc)
        (:HANGUL-WEO                   . #xecd)
        (:HANGUL-WE                    . #xece)
        (:HANGUL-WI                    . #xecf)
        (:HANGUL-YU                    . #xed0)
        (:HANGUL-EU                    . #xed1)
        (:HANGUL-YI                    . #xed2)
        (:HANGUL-I                     . #xed3)
        (:HANGUL-J-KIYEOG              . #xed4)
        (:HANGUL-J-SSANG-KIYEOG        . #xed5)
        (:HANGUL-J-KIYEOG-SIOS         . #xed6)
        (:HANGUL-J-NIEUN               . #xed7)
        (:HANGUL-J-NIEUN-JIEUJ         . #xed8)
        (:HANGUL-J-NIEUN-HIEUH         . #xed9)
        (:HANGUL-J-DIKEUD              . #xeda)
        (:HANGUL-J-RIEUL               . #xedb)
        (:HANGUL-J-RIEUL-KIYEOG        . #xedc)
        (:HANGUL-J-RIEUL-MIEUM         . #xedd)
        (:HANGUL-J-RIEUL-PIEUB         . #xede)
        (:HANGUL-J-RIEUL-SIOS          . #xedf)
        (:HANGUL-J-RIEUL-TIEUT         . #xee0)
        (:HANGUL-J-RIEUL-PHIEUF        . #xee1)
        (:HANGUL-J-RIEUL-HIEUH         . #xee2)
        (:HANGUL-J-MIEUM               . #xee3)
        (:HANGUL-J-PIEUB               . #xee4)
        (:HANGUL-J-PIEUB-SIOS          . #xee5)
        (:HANGUL-J-SIOS                . #xee6)
        (:HANGUL-J-SSANG-SIOS          . #xee7)
        (:HANGUL-J-IEUNG               . #xee8)
        (:HANGUL-J-JIEUJ               . #xee9)
        (:HANGUL-J-CIEUC               . #xeea)
        (:HANGUL-J-KHIEUQ              . #xeeb)
        (:HANGUL-J-TIEUT               . #xeec)
        (:HANGUL-J-PHIEUF              . #xeed)
        (:HANGUL-J-HIEUH               . #xeee)
        (:HANGUL-RIEUL-YEORIN-HIEUH    . #xeef)
        (:HANGUL-SUNKYEONGEUM-MIEUM    . #xef0)
        (:HANGUL-SUNKYEONGEUM-PIEUB    . #xef1)
        (:HANGUL-PAN-SIOS              . #xef2)
        (:HANGUL-KKOGJI-DALRIN-IEUNG   . #xef3)
        (:HANGUL-SUNKYEONGEUM-PHIEUF   . #xef4)
        (:HANGUL-YEORIN-HIEUH          . #xef5)
        (:HANGUL-ARAE-A                . #xef6)
        (:HANGUL-ARAE-AE               . #xef7)
        (:HANGUL-J-PAN-SIOS            . #xef8)
        (:HANGUL-J-KKOGJI-DALRIN-IEUNG . #xef9)
        (:HANGUL-J-YEORIN-HIEUH        . #xefa)
        (:KOREAN-WON                   . #xeff)
        (:ECU-SIGN                     . #x20a0)
        (:COLON-SIGN                   . #x20a1)
        (:CRUZEIRO-SIGN                . #x20a2)
        (:FFRANC-SIGN                  . #x20a3)
        (:LIRA-SIGN                    . #x20a4)
        (:MILL-SIGN                    . #x20a5)
        (:NAIRA-SIGN                   . #x20a6)
        (:PESETA-SIGN                  . #x20a7)
        (:RUPEE-SIGN                   . #x20a8)
        (:WON-SIGN                     . #x20a9)
        (:NEW-SHEQEL-SIGN              . #x20aa)
        (:DONG-SIGN                    . #x20ab)
        (:EURO-SIGN                    . #x20ac)

        ;; Copyright (c) 1988  X Consortium
        ;;
        ;; Permission is hereby granted, free of charge, to any person obtaining a copy
        ;; of this software and associated documentation files (the "Software"), to deal
        ;; in the Software without restriction, including without limitation the rights
        ;; to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
        ;; copies of the Software, and to permit persons to whom the Software is
        ;; furnished to do so, subject to the following conditions:
        ;;
        ;; The above copyright notice and this permission notice shall be included in
        ;; all copies or substantial portions of the Software.
        ;;
        ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
        ;; X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
        ;; AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
        ;; CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
        ;;
        ;; Except as contained in this notice, the name of the X Consortium shall not be
        ;; used in advertising or otherwise to promote the sale, use or other dealings
        ;; in this Software without prior written authorization from the X Consortium.

        ;; Copyright 1988 by Digital Equipment Corporation, Maynard, Massachusetts.
        ;;
        ;;                         All Rights Reserved
        ;;
        ;; Permission to use, copy, modify, and distribute this software and its
        ;; documentation for any purpose and without fee is hereby granted,
        ;; provided that the above copyright notice appear in all copies and that
        ;; both that copyright notice and this permission notice appear in
        ;; supporting documentation, and that the name of Digital not be
        ;; used in advertising or publicity pertaining to distribution of the
        ;; software without specific, written prior permission.
        ;;
        ;; DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
        ;; ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
        ;; DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
        ;; ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
        ;; WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
        ;; ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
        ;; SOFTWARE.

        ;; DEC private keysyms
        ;; (29th bit set)
        (:D-RING-ACCENT                . #x1000feb0)
        (:D-CIRCUMFLEX-ACCENT          . #x1000fe5e)
        (:D-CEDILLA-ACCENT             . #x1000fe2c)
        (:D-ACUTE-ACCENT               . #x1000fe27)
        (:D-GRAVE-ACCENT               . #x1000fe60)
        (:D-TILDE                      . #x1000fe7e)
        (:D-DIAERESIS                  . #x1000fe22)
        (:D-REMOVE                     . #x1000ff00)

        ;; Copyright (c) 1987  X Consortium
        ;;
        ;; Permission is hereby granted, free of charge, to any person obtaining
        ;; a copy of this software and associated documentation files (the
        ;; "Software"), to deal in the Software without restriction, including
        ;; without limitation the rights to use, copy, modify, merge, publish,
        ;; distribute, sublicense, and/or sell copies of the Software, and to
        ;; permit persons to whom the Software is furnished to do so, subject to
        ;; the following conditions:
        ;;
        ;; The above copyright notice and this permission notice shall be included
        ;; in all copies or substantial portions of the Software.
        ;;
        ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
        ;; OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
        ;; MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
        ;; IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR
        ;; OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
        ;; ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
        ;; OTHER DEALINGS IN THE SOFTWARE.
        ;;
        ;; Except as contained in this notice, the name of the X Consortium shall
        ;; not be used in advertising or otherwise to promote the sale, use or
        ;; other dealings in this Software without prior written authorization
        ;; from the X Consortium.

        ;; Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts,
        ;;
        ;;                         All Rights Reserved
        ;;
        ;; Permission to use, copy, modify, and distribute this software and its
        ;; documentation for any purpose and without fee is hereby granted,
        ;; provided that the above copyright notice appear in all copies and that
        ;; both that copyright notice and this permission notice appear in
        ;; supporting documentation, and that the names of Hewlett Packard
        ;; or Digital not be
        ;; used in advertising or publicity pertaining to distribution of the
        ;; software without specific, written prior permission.
        ;;
        ;; DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
        ;; ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
        ;; DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
        ;; ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
        ;; WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
        ;; ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
        ;; SOFTWARE.
        ;;
        ;; HEWLETT-PACKARD MAKES NO WARRANTY OF ANY KIND WITH REGARD
        ;; TO THIS SOFWARE, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
        ;; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
        ;; PURPOSE.  Hewlett-Packard shall not be liable for errors
        ;; contained herein or direct, indirect, special, incidental or
        ;; consequential damages in connection with the furnishing,
        ;; performance, or use of this material.
        (:HP-CLEAR-LINE                . #x1000ff6f)
        (:HP-INSERT-LINE               . #x1000ff70)
        (:HP-DELETE-LINE               . #x1000ff71)
        (:HP-INSERT-CHAR               . #x1000ff72)
        (:HP-DELETE-CHAR               . #x1000ff73)
        (:HP-BACK-TAB                  . #x1000ff74)
        (:HP-KP-BACK-TAB               . #x1000ff75)
        (:HP-MODELOCK1                 . #x1000ff48)
        (:HP-MODELOCK2                 . #x1000ff49)
        (:HP-RESET                     . #x1000ff6c)
        (:HP-SYSTEM                    . #x1000ff6d)
        (:HP-USER                      . #x1000ff6e)
        (:HP-MUTE-ACUTE                . #x100000a8)
        (:HP-MUTE-GRAVE                . #x100000a9)
        (:HP-MUTE-ASCIICIRCUM          . #x100000aa)
        (:HP-MUTE-DIAERESIS            . #x100000ab)
        (:HP-MUTE-ASCII-TILDE          . #x100000ac)
        (:HP-LIRA                      . #x100000af)
        (:HP-GUILDER                   . #x100000be)
        (:HP-Y-DIAERESIS               . #x100000ee)
        (:HP-IO                        . #x100000ee)
        (:HP-LONGMINUS                 . #x100000f6)
        (:HP-BLOCK                     . #x100000fc)
        (:OSF-COPY                     . #x1004ff02)
        (:OSF-CUT                      . #x1004ff03)
        (:OSF-PASTE                    . #x1004ff04)
        (:OSF-BACK-TAB                 . #x1004ff07)
        (:OSF-BACK-SPACE               . #x1004ff08)
        (:OSF-CLEAR                    . #x1004ff0b)
        (:OSF-ESCAPE                   . #x1004ff1b)
        (:OSF-ADD-MODE                 . #x1004ff31)
        (:OSF-PRIMARY-PASTE            . #x1004ff32)
        (:OSF-QUICK-PASTE              . #x1004ff33)
        (:OSF-PAGE-LEFT                . #x1004ff40)
        (:OSF-PAGE-UP                  . #x1004ff41)
        (:OSF-PAGE-DOWN                . #x1004ff42)
        (:OSF-PAGE-RIGHT               . #x1004ff43)
        (:OSF-ACTIVATE                 . #x1004ff44)
        (:OSF-MENU-BAR                 . #x1004ff45)
        (:OSF-LEFT                     . #x1004ff51)
        (:OSF-UP                       . #x1004ff52)
        (:OSF-RIGHT                    . #x1004ff53)
        (:OSF-DOWN                     . #x1004ff54)
        (:OSF-END-LINE                 . #x1004ff57)
        (:OSF-BEGIN-LINE               . #x1004ff58)
        (:OSF-END-DATA                 . #x1004ff59)
        (:OSF-BEGIN-DATA               . #x1004ff5a)
        (:OSF-PREV-MENU                . #x1004ff5b)
        (:OSF-NEXT-MENU                . #x1004ff5c)
        (:OSF-PREV-FIELD               . #x1004ff5d)
        (:OSF-NEXT-FIELD               . #x1004ff5e)
        (:OSF-SELECT                   . #x1004ff60)
        (:OSF-INSERT                   . #x1004ff63)
        (:OSF-UNDO                     . #x1004ff65)
        (:OSF-MENU                     . #x1004ff67)
        (:OSF-CANCEL                   . #x1004ff69)
        (:OSF-HELP                     . #x1004ff6a)
        (:OSF-SELECT-ALL               . #x1004ff71)
        (:OSF-DESELECT-ALL             . #x1004ff72)
        (:OSF-RESELECT                 . #x1004ff73)
        (:OSF-EXTEND                   . #x1004ff74)
        (:OSF-RESTORE                  . #x1004ff78)
        (:OSF-DELETE                   . #x1004ffff)

        ;; The use of the following macros is deprecated.
        ;; They are listed below only for backwards compatibility.
        (:RESET                        . #x1000ff6c)
        (:SYSTEM                       . #x1000ff6d)
        (:USER                         . #x1000ff6e)
        (:CLEAR-LINE                   . #x1000ff6f)
        (:INSERT-LINE                  . #x1000ff70)
        (:DELETE-LINE                  . #x1000ff71)
        (:INSERT-CHAR                  . #x1000ff72)
        (:DELETE-CHAR                  . #x1000ff73)
        (:BACK-TAB                     . #x1000ff74)
        (:KP-BACK-TAB                  . #x1000ff75)
        (:EXT16BIT-L                   . #x1000ff76)
        (:EXT16BIT-R                   . #x1000ff77)
        (:MUTE-ACUTE                   . #x100000a8)
        (:MUTE-GRAVE                   . #x100000a9)
        (:MUTE-ASCIICIRCUM             . #x100000aa)
        (:MUTE-DIAERESIS               . #x100000ab)
        (:MUTE-ASCII-TILDE             . #x100000ac)
        (:LIRA                         . #x100000af)
        (:GUILDER                      . #x100000be)
        (:Y-DIAERESIS                  . #x100000ee)
        (:IO                           . #x100000ee)
        (:LONGMINUS                    . #x100000f6)
        (:BLOCK                        . #x100000fc)

        ;; Copyright (c) 1991  X Consortium
        ;;
        ;; Permission is hereby granted, free of charge, to any person obtaining a copy
        ;; of this software and associated documentation files (the "Software"), to deal
        ;; in the Software without restriction, including without limitation the rights
        ;; to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
        ;; copies of the Software, and to permit persons to whom the Software is
        ;; furnished to do so, subject to the following conditions:
        ;;
        ;; The above copyright notice and this permission notice shall be included in
        ;; all copies or substantial portions of the Software.
        ;;
        ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
        ;; X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
        ;; AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
        ;; CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
        ;;
        ;; Except as contained in this notice, the name of the X Consortium shall not be
        ;; used in advertising or otherwise to promote the sale, use or other dealings
        ;; in this Software without prior written authorization from the X Consortium.

        ;; Copyright 1991 by Sun Microsystems, Inc. Mountain View, CA.
        ;;
        ;;                     All Rights Reserved
        ;;
        ;; Permission  to  use,  copy,  modify,  and  distribute   this
        ;; software  and  its documentation for any purpose and without
        ;; fee is hereby granted, provided that the above copyright no-
        ;; tice  appear  in all copies and that both that copyright no-
        ;; tice and this permission notice appear in  supporting  docu-
        ;; mentation,  and  that the name of Sun not be used in
        ;; advertising or publicity pertaining to distribution  of  the
        ;; software  without specific prior written permission. Sun
        ;; makes  no  representations about the suitability  of this
        ;; software for any purpose. It is provided "as is" without any
        ;; express or implied warranty.
        ;;
        ;; SUN DISCLAIMS ALL WARRANTIES WITH REGARD TO  THIS  SOFTWARE,
        ;; INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FIT-
        ;; NESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SUN BE  LI-
        ;; ABLE  FOR  ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
        ;; ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,  DATA  OR
        ;; PROFITS,  WHETHER  IN  AN  ACTION OF CONTRACT, NEGLIGENCE OR
        ;; OTHER TORTUOUS ACTION, ARISING OUT OF OR IN CONNECTION  WITH
        ;; THE USE OR PERFORMANCE OF THIS SOFTWARE.

        ;; Floating Accent
        (:SUN-FA-GRAVE                 . #x1005ff00)
        (:SUN-FA-CIRCUM                . #x1005ff01)
        (:SUN-FA-TILDE                 . #x1005ff02)
        (:SUN-FA-ACUTE                 . #x1005ff03)
        (:SUN-FA-DIAERESIS             . #x1005ff04)
        (:SUN-FA-CEDILLA               . #x1005ff05)

        ;; Miscellaneous Functions
        (:SUN-F36                      . #x1005ff10)
        (:SUN-F37                      . #x1005ff11)
        (:SUN-SYS-REQ                  . #x1005ff60)
        (:SUN-PRINT-SCREEN             . #xff61)

        ;; International & Multi-Key Character Composition
        (:SUN-COMPOSE                  . #xff20)
        (:SUN-ALT-GRAPH                . #xff7e)

        ;; Cursor Control
        (:SUN-PAGE-UP                  . #xff55)
        (:SUN-PAGE-DOWN                . #xff56)

        ;; Open Look Functions
        (:SUN-UNDO                     . #xff65)
        (:SUN-AGAIN                    . #xff66)
        (:SUN-FIND                     . #xff68)
        (:SUN-STOP                     . #xff69)
        (:SUN-PROPS                    . #x1005ff70)
        (:SUN-FRONT                    . #x1005ff71)
        (:SUN-COPY                     . #x1005ff72)
        (:SUN-OPEN                     . #x1005ff73)
        (:SUN-PASTE                    . #x1005ff74)
        (:SUN-CUT                      . #x1005ff75)
        (:SUN-POWER-SWITCH             . #x1005ff76)
        (:SUN-AUDIO-LOWER-VOLUME       . #x1005ff77)
        (:SUN-AUDIO-MUTE               . #x1005ff78)
        (:SUN-AUDIO-RAISE-VOLUME       . #x1005ff79)
        (:SUN-VIDEO-DEGAUSS            . #x1005ff7a)
        (:SUN-VIDEO-LOWER-BRIGHTNESS   . #x1005ff7b)
        (:SUN-VIDEO-RAISE-BRIGHTNESS   . #x1005ff7c)
        (:SUN-POWER-SWITCH-SHIFT       . #x1005ff7d)

        ;; Copyright 1987 by Apollo Computer Inc., Chelmsford, Massachusetts.
        ;; Copyright 1989 by Hewlett-Packard Company.
        ;;
        ;;                         All Rights Reserved
        ;;
        ;; Permission to use, duplicate, change, and distribute this software and
        ;; its documentation for any purpose and without fee is granted, provided
        ;; that the above copyright notice appear in such copy and that this
        ;; copyright notice appear in all supporting documentation, and that the
        ;; names of Apollo Computer Inc., the Hewlett-Packard Company, or the X
        ;; Consortium not be used in advertising or publicity pertaining to
        ;; distribution of the software without written prior permission.
        ;;
        ;; HEWLETT-PACKARD MAKES NO WARRANTY OF ANY KIND WITH REGARD
        ;; TO THIS SOFWARE, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
        ;; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
        ;; PURPOSE.  Hewlett-Packard shall not be liable for errors
        ;; contained herein or direct, indirect, special, incidental or
        ;; consequential damages in connection with the furnishing,
        ;; performance, or use of this material.
        ;;
        ;; This software is not subject to any license of the American
        ;; Telephone and Telegraph Company or of the Regents of the
        ;; University of California.
        (:AP-LINE-DEL                  . #x1000ff00)
        (:AP-CHAR-DEL                  . #x1000ff01)
        (:AP-COPY                      . #x1000ff02)
        (:AP-CUT                       . #x1000ff03)
        (:AP-PASTE                     . #x1000ff04)
        (:AP-MOVE                      . #x1000ff05)
        (:AP-GROW                      . #x1000ff06)
        (:AP-CMD                       . #x1000ff07)
        (:AP-SHELL                     . #x1000ff08)
        (:AP-LEFT-BAR                  . #x1000ff09)
        (:AP-RIGHT-BAR                 . #x1000ff0a)
        (:AP-LEFT-BOX                  . #x1000ff0b)
        (:AP-RIGHT-BOX                 . #x1000ff0c)
        (:AP-UP-BOX                    . #x1000ff0d)
        (:AP-DOWN-BOX                  . #x1000ff0e)
        (:AP-POP                       . #x1000ff0f)
        (:AP-READ                      . #x1000ff10)
        (:AP-EDIT                      . #x1000ff11)
        (:AP-SAVE                      . #x1000ff12)
        (:AP-EXIT                      . #x1000ff13)
        (:AP-REPEAT                    . #x1000ff14)
        (:AP-KP-PARENLEFT              . #x1000ffa8)
        (:AP-KP-PARENRIGHT             . #x1000ffa9)))
